<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 只声明  未赋值 打印undefined
        var a 
        console.log(a, b)
        var a = 12, b = '林更新'
        function foo() {
            var a 
            //  同理  只提升了变量 未赋值
            //  b没有在当前作用域声明 去上一级寻找并修改值 
            console.log(a, b)
            var a = b = 13
            //  声明赋值后打印  13 13  
            console.log(a, b)
        }
        foo()
        // 第四个  因为在函数里面b的值别修改 所以第四个打印  a=12  b=13 
        console.log(a, b)
    </script>
</body>

</html>